Combining Forward and Backward Abstract Interpretation of Horn Clauses

نویسندگان

  • Alexey Bakhirkin
  • David Monniaux
چکیده

Alternation of forward and backward analyses is a standard technique in abstract interpretation of programs, which is in particular useful when we wish to prove unreachability of some undesired program states. The current state-ofthe-art technique for combining forward (bottom-up, in logic programming terms) and backward (top-down) abstract interpretation of Horn clauses is query-answer transformation. It transforms a system of Horn clauses, such that standard forward analysis can propagate constraints both forward, and backward from a goal. Queryanswer transformation is effective, but has issues that we wish to address. For that, we introduce a new backward collecting semantics, which is suitable for alternating forward and backward abstract interpretation of Horn clauses. We show how the alternation can be used to prove unreachability of the goal and how every subsequent run of an analysis yields a refined model of the system. Experimentally, we observe that combining forward and backward analyses is important for analysing systems that encode questions about reachability in C programs. In particular, the combination that follows our new semantics improves the precision of our own abstract interpreter, including when compared to a forward analysis of a query-answer-transformed system.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Convex polyhedral abstractions, specialisation and property-based predicate splitting in Horn clause verification

We present an approach to constrained Horn clause (CHC) verification combining three techniques: abstract interpretation over a domain of convex polyhedra, specialisation of the constraints in CHCs using abstract interpretation of query-answer transformed clauses, and refinement by splitting predicates. The purpose of the work is to investigate how analysis and transformation tools developed fo...

متن کامل

Energy Consumption Analysis and Verification by Transformation into Horn Clauses and Abstract Interpretation∗

The static estimation of the energy consumed by program executions has applications in program optimization and verification, and is instrumental in energy-aware software development. We describe our approach for estimating such energy consumption statically (i.e., at compile-time, without running the program) in the form of functions on the input data sizes of procedures (and possibly other ha...

متن کامل

Normalization of Horn clauses with disequality constraints

Horn clauses constitute a convenient, Turing-powerful tool for the specification and representation of analysis problems. However, it is not possible to express disequality conditions directly and in a natural way by means of Horn clauses. This thesis therefore proposes an extension of Horn clauses with several kinds of disequality constraints. In order to provide an automatic analysis framewor...

متن کامل

A Uniform Framework for Deductive Database Derivation Strategies

A uniform framework is presented to describe the most typical strategies that are used to compute answers to Deductive Databases. The framework is based on the definition of a general Least Fixpoint operator that operates on meta rules. Each set of meta rules represents a different strategy, and this allows an easy comparison. We first consider Deductive Databases with Horn clauses and we prese...

متن کامل

An encoding of array verification problems into array-free Horn clauses

Automatically verifying safety properties of programs is hard, and it is even harder if the program acts upon arrays or other forms of maps. Many approaches exist for verifying programs operating upon Boolean and integer values (e.g. abstract interpretation, counterexample-guided abstraction refinement using interpolants), but transposing them to array properties has been fraught with difficult...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2017